package com.dubbo.Master;

import com.dubbo.common.dtos.PageRequestDto;
import com.dubbo.common.dtos.ResponseResult;
import com.dubbo.model.master.dtos.*;
import com.dubbo.model.master.pojos.Master;
import com.dubbo.vo.CarMasterVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @Author: Xu
 * @Date: 2022/01/16/15:11
 */
public interface MasterServer {
     /**
      * 查找车组信息分页
      * @param dto
      * @return
      */
     ResponseResult findAllCarMaster(VehicleMasterDto dto);

     /**
      * 上传图片到minIo 返回路径
      * @param file
      * @return
      */
     String uploadMinIo(MultipartFile file);

     /**
      * 保存提供商到数据库
      * @param dto
      * @return
      */
     ResponseResult saveProvider(ServerProviderDto dto);

     /**
      * 分页条件查询服务商
      * @param dto
      * @return
      */
     ResponseResult findProviderList(MasterDto dto);

     /**
      * 保存配件商信息
      * @param dto
      */
    ResponseResult saveMounting(MountingMasterDto dto);

     /**
      * 分页条件查询 配件商信息列表
      * @param dto
      * @return
      */
    ResponseResult findMountingList(MasterMountingsDto dto);

    /**
     * 查询未审核通过的主体
     * 获取分页对象
     * @return
     */
    ResponseResult findUncheckList(CheckMasterDto dto);

    /**
     * 主体审核 查看详情
     * @param id
     * @return
     */
    ResponseResult masterCheck(Integer id);
    /**
     * 修改 待审核的主体的状态
     * 0；待审核
     * 1；审核通过、
     * 2；决绝审核
     */
    ResponseResult updateMasterCheckStatus(MasterStatusDto dto);

    /**
     * 根据主体id 查询主体用户
     * @param id
     * @return
     */
    ResponseResult findMasterUserListById(Integer id);

    /**
     * 新增主体管理员
     * @param dto
     */
    ResponseResult insertMasterUserAdmin(MasterUserDto dto);


}
